From: Cosimo Cecchi Date: Wed, 5 Jun 2013 20:54:09 +0000 (-0700) Subject: Remove dangerous explicit destroy X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~314 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=ad2cb227858effa57ce977c77744c9e0781ec1a3;p=gnome-shell.git Remove dangerous explicit destroy There's no need to explicitly destroy the ClutterText actor inside the label; doing so is actually harmful, as it will break the normal reference cycle between container and children. As StLabel doesn't hold any extra reference to the ClutterText actor and just uses clutter_actor_add_actor() to add it to itself, let the normal container dispose cycle run to dispose of the reference. https://bugzilla.gnome.org/show_bug.cgi?id=783483 --- diff --git a/src/st/st-label.c b/src/st/st-label.c index 95ba895b7..a7893b074 100644 --- a/src/st/st-label.c +++ b/src/st/st-label.c @@ -180,12 +180,6 @@ st_label_dispose (GObject *object) { StLabelPrivate *priv = ST_LABEL (object)->priv; - if (priv->label) - { - clutter_actor_destroy (priv->label); - priv->label = NULL; - } - g_clear_pointer (&priv->text_shadow_pipeline, cogl_object_unref); G_OBJECT_CLASS (st_label_parent_class)->dispose (object);